<?php  
	/**
	 *	功能：可以实现图像等比例缩放的函数
	 *  作者：XXX
	 *  时间：2016-7-25 10:56:51
	 *  @param  $imgDir  string    原图像的url地址以及等比缩放之后图像存储的url地址
	 *	@param  $cw	 	 int	   图像缩放后的宽度(默认是 200px)
	 *	@param  $ch	 	 int	   图像缩放后的高度(默认是 200px)
	 *	@param  $pre	 string    图像缩放之后的前缀名
	 *	@return true	 boolean   图像缩放成功之后，返回一个布尔型的true
	 */
	function imgR($imgDir,$cw,$ch,$pre){
  	//1.准备画布、画笔、颜料		
	  //获取原图片的后缀名
		$ImgDir = pathinfo($imgDir);
		//var_dump($ImgDir);
	    $info = getimagesize($imgDir);
      
      //根据后来创建相应格式的画布
		switch($info[2]){
			case 1:    //gif
			 	$a = imagecreatefromgif($imgDir);
				break;
			case 2:    //jpeg
				$a = imagecreatefromjpeg($imgDir);
				break;
			case 3:  //png
				$a = imagecreatefrompng($imgDir);
				break;
		}
		
	   //获取原图的宽高
		$aw = imagesx($a);
		$ah = imagesy($a);
		
      //获取新图的宽高
		$b = $aw > $ah ? $aw / $cw : $ah /$ch;
		$cw = $aw / $b;
		$ch = $ah / $b;
		
      //根据新宽高创建一个新的画布
		$c  = imagecreatetruecolor($cw,$ch);
  
  	//2.开始绘画		
		imagecopyresampled($c,$a,0,0,0,0,$cw,$ch,$aw,$ah);
		
      //给新图添加前缀名
		$ImgDir['basename'] = $pre.$ImgDir['basename'];
		
  	//3.输出图像      
		switch($info[2]){
			case 1:    //gif
				imagegif($c,$ImgDir['dirname']."/".$ImgDir['basename']);
				break;
			case 2:    //jpeg
				imagejpeg($c,$ImgDir['dirname']."/".$ImgDir['basename']);
				break;
			case 3:  //png
				imagepng($c,$ImgDir['dirname']."/".$ImgDir['basename']);
				break;
		}
  
  	//4.释放资源
		imagedestroy($a);
		imagedestroy($c);
		
	//返回结果	
		return true;		
	}
?>